From e82a2fb6080fa6cdb9f4baaf101b438baea07fc9 Mon Sep 17 00:00:00 2001 From: Keir Fraser Date: Thu, 8 Oct 2009 08:51:51 +0100 Subject: [PATCH] x86 tsc: Fix check_tsc_warp() bug and add copyright notice Signed-off-by: Dan Magenheimer Signed-off-by: Keir Fraser --- xen/arch/x86/time.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/xen/arch/x86/time.c b/xen/arch/x86/time.c index 5a56b717c9..7f1a1153d7 100644 --- a/xen/arch/x86/time.c +++ b/xen/arch/x86/time.c @@ -1442,6 +1442,10 @@ struct tm wallclock_time(void) * TSC Reliability check */ +/* + * The Linux original version of this function is + * Copyright (c) 2006, Red Hat, Inc., Ingo Molnar + */ void check_tsc_warp(unsigned long tsc_khz, unsigned long *max_warp) { #define rdtsc_barrier() mb() @@ -1494,7 +1498,7 @@ void check_tsc_warp(unsigned long tsc_khz, unsigned long *max_warp) if ( unlikely(prev > now) ) { spin_lock(&sync_lock); - if ( *max_warp > prev - now ) + if ( *max_warp < prev - now ) *max_warp = prev - now; spin_unlock(&sync_lock); } -- 2.30.2